package collections2;


import java.io.File;
import java.io.FileReader;
import java.util.HashMap;
import java.util.Iterator;



public class Test1 {

		 public static void main(String[] args) {  
			 StringBuffer sb = null;
		        // 文件路径
				File file = new File("D:/爱情与时间.txt");
				// 创建集合HashMap类存放要保存的key-value
				HashMap<String, Integer> map = new HashMap<>();
				try {
					// 创建字符流
					FileReader fr = new FileReader(file);
					// 每次读取的字符长度
					int len = 0;
					int count=0;//出现该字符的次数
					while ((len = fr.read()) != -1) {
						// 获取对应的字符
						count=0;
						char c = (char) len;
						try {
							// 通过每次的key值获取它的value值，
							// 但是在它的key值没有时或报空指针错误，所以要try catch处理
							// 当她有key值，就可以获取到相应的value值
							count = map.get(c + "");
							
						} catch (Exception e) {// 什么都不用输出
						}
						// 如果有它的key值对应的value值要加1
						map.put(c + "", count + 1);
					}
					
					// 读完后把结果打印出来
					Iterator<String> iterator = map.keySet().iterator();
					
					//迭代器的使用
					while (iterator.hasNext()) {				
						
						String entry = iterator.next();
						System.out.print(entry +"("+map.get(entry)+")"+ "\t");
					    
					}
				} catch (Exception e) {
					e.printStackTrace();
				}
				

			}

		}
